David Charles - Managing Kubernetes from Python using Kube
[18 July 2016 / 2016-07-18]
[Bilbao, Euskadi, Spain]
Kubernetes is the Google Borg inspired control plane for Docker
containers. It has a great API but needs a load of HTTP client code
and JSON processing to use it from Python. This talk introduces Kube,
a Python wrapper around the Kubernetes API that enables you to manage
your Kubernetes cluster in a pythonic way while avoiding any
Kubernetes API peculiarities. Programmers and operations folk who are
interested in interacting with the Kubernetes API using Python.
Docker has had a transformative influence on the way we deploy
software and Kubernetes, the Google Borg inspired control plane for
Docker-container- hosting-clusters, is gaining similar momentum.
Being able to easily interact with this technology from Python will
become an increasingly important capability in many organisations.
I'll discuss what the motivations behind writing Kube. We'll dive
into Kube using the Python interactive interpreter, getting connected
to the API, and simple viewing and label update operations. Finally
I'll discuss more advanced resource management activities like Kube's
'watch' API capability.
Attendees will learn about the key concepts in getting resource
information out of their Kubernetes cluster using Kube.
1. Setting the scene (3 minutes)
1. Other Python kubernetes wrappers (2 minutes)
1. Kubernetes concepts quick recap (5 minutes)
1. Dive into Kube in the Python interactive interpreter (10 minutes)
* Outline prerequisites
* The entry point - a Cluster instance
* Views and Items - two important Kube concepts
* Item meta data: labels and versions
1. More Kube features (5 minutes)
* Creating and deleting resources
* Using Kube's Watch API support
* The cluster proxy attribute for when you need to get at the actual API.
1. Q&A (5 minutes)